1. Field of the Invention
The present invention relates in general computing systems, and more particularly to, systems and methods for improved response times in computing storage environments.
2. Description of the Related Art
In today's society, computer systems are commonplace. Computer systems may be found in the workplace, at home, or at school. Computer systems may include data storage systems, or disk storage systems, to process and store data. Data integrity is a critical factor in large computer data systems. Consequently, backup data storage systems have been developed to prevent the loss of data in the event of various types of failures. Typically backup systems generally referred to as “synchronous mirroring” or more specifically as “peer-to-peer remote copy” (PPRC), maintain a separate, consistent copy of data. In general, in such systems data generated by a host device is stored on a primary storage unit. A copy of the data is also transmitted synchronously over a mirroring network and stored on a secondary storage unit. Because of the flexibility of network interconnections, the primary and secondary storage units may be physically located remote from the host. And, for additional data security, the primary and secondary storage units may be physically located distant from each other, thereby reducing the likelihood of a single disaster simultaneously harming both the primary and secondary units.
One issue in such backup systems is the ability to meet stringent input/output (I/O) response time requirements in addition to providing high availability. This is a particular issue where the secondary storage units are located relatively large distances from the primary storage units. While synchronous mirroring often occurs over very short network distances (campus distances of 10 km or less), in some applications longer distances of up to 100 km between primary and secondary storage units are increasingly common. In these systems failure of the mirroring network (including partial, intermittent, or complete failures) are more likely, especially as the mirroring networks become more complex or when the mirroring networks use shared or leased components. However, even at shorter distances the network components (e.g., physical fibre optic links, switches, routers, etc.) can fail or become congested.
Network failure can result in increased host response time, especially in synchronous mirroring environments, since the host writes are delayed by the completion of the mirrored write. If significant time is spent waiting for these mirrored writes to complete (due to timeouts, retry on alternate paths etc.), the normal response times can increase to multiple seconds, which is intolerable for many response time sensitive applications. Thus, what are needed are improved systems and methods for mirroring, and in particular for responding to errors in network mirroring.